home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Deutsche Edition 1
/
Deutsche Edition 1.iso
/
amok
/
amok_lha
/
amok13.lha
/
CompControl
/
CompControl.DOC
< prev
next >
Wrap
Text File
|
1993-08-15
|
8KB
|
194 lines
CompControl
Version 2.1
Der SoftWareArmy-Compiler-Controller
von Ralf Kaiser
Der SwA-Compiler-Controller ist ein Programm, das die Bedienung von
Editor, Compiler und Linker vereinfacht. Das Programm liest die Namen
der jeweils zu startenden Programme aus einem Konfigurationsfile. Dadurch
kann sich jeder Anwender die Konfiguration einstellen, die seinem
System entspricht.
- Aufruf des Programms
CompControl <Workname>
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! !
! Das Starten von der Workbench funktioniert in dieser Version leider !
! nicht. Die Programme (also Editor u.s.w), die aufgerufen werden, arbeiten !
! bei einem Workbenchstart nicht !! !
! Warum das so ist, kann ich noch nicht sagen, ich habe jedenfalls !
! Terminal IMPORTiert und somit ein Fenster für Ein- und Ausgabe zur Ver- !
! fügung. Wenn jemand weiß, warum das so ist : Ich brauch dringend (!!) !
! eine Antwort auf das Problem. !
! Allerdings ist der CompControl bei der Arbeit mit der WB auch nicht !
! so nötig wie bei der Arbeit mit dem CLI. !
! !
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Das Argument <Workname> ist optional. Wird es angegeben, so wird es
automatisch in das Namensgadget eingetragen und als Arbeitsname
benutzt.
- Die Konfiguration
Der CompControl liest beim Aufstarten ein Konfigurationsfile. Das File hat
den Namen "CC.Config" und sollte entweder im aktuellen Directory oder
in "S:" vorhanden sein. Ist das File nicht vorhanden, so gelten für die
Konfiguration festgelegte Standardwerte.
Bei der Konfiguration kann man als "Compiler" 2 verschiedene Programme
einsetzen. Jedem "Compiler" wird noch eine Endung zugeordnet, die an
das mit diesem "Compiler" bearbeitete Programm angehängt wird.
Zwei Beispiele sollen das verdeutlichen :
1. Als 1.Compiler wird "C:M2C " eingesetzt. Die Endung lautet ".MOD".
Als 2.Compiler wird "C:M2C " eingesetzt. Die Endung lautet ".DEF".
2. Als 1.Compiler wird "C:CC " eingesetzt. Die Endung lautet ".C".
Als 2."Compiler" wird "C:AS " eingesetzt. Die Endung lautet ".ASM".
Dadurch ist es nun möglich mit dem CompControl nebenbei noch ein
anderes Programm zu betreiben (wie in dem Beispiel ein Assembler).
Beim Format des Konfigurationsfiles ist die Reihenfolge der einzelnen
Komponenten zwingend vorgeschrieben. Das File besteht aus folgenden
Zeilen :
1. Zeile : Pfad, Name und Optionen für den Editor
Beispiel : "C:M2EMACS -d "
2. Zeile : Pfad, Name und Optionen für den Compiler 1
Beispiel : "C:M2C -di "
3. Zeile : Endung des Arbeitsfiles für Compiler 1
Beispiel : ".MOD"
4. Zeile : Pfad, Name und Optionen für den Compiler 2
Beispiel : "C:M2C -di "
5. Zeile : Endung des Arbeitsfiles für Compiler 2
Beispiel : ".DEF"
6. Zeile : Pfad, Name und Optionen für den Linker
Beispiel : "C:M2L "
7. Zeile : Endung des Arbeitsfiles für den Linker
Das Konfigurationsfile kann mit einem beliebigen Texteditor eingegeben
werden. Die Zeilen werden jeweils ohne die Anführungsstriche eingegeben.
Dabei ist es wichtig, daß die Zeilen 1, 2, 4 und 6 jeweils mit einem
SPACE enden.
Die Standardkonfiguration, also diejenige die bei Fehlen des Files
eingesetzt wird, ist genau die aus den Beispielen.
- Die Gadgets
Der CompControl stellt insgesammt 12 Gadgets für die Arbeit zur
Verfügung. Auf diese Gadgets und deren Bedeutung soll nun im
einzelnen eingegangen werden.
Edit
Mit dem Editgadget wird der eingestellte Editor aufgerufen. Als Argument
wird der aktuelle Arbeitsname sowie die aktuelle Endung uebergeben.
Kompillieren
Mit dem Compilergadget wird der aktuelle Compiler aufgerufen. Das Programm
übergiebt wieder den Arbeitsnamen und die aktuelle Endung.
Binden
Mit dem Linkgadget wird der Linker aufgerufen. Er bekommt als Argument
wieder den Arbeitsnamen sowie die Linkerendung (meistens .OBJ)
Starten
Über dieses Gadget wird das vom Linker erzeugte Programm gestartet.
Name
Unter der ersten Reihe Gadgets befindet sich ein Stringgadget, in das
der Arbeitsname eingetragen werden kann. Man trägt einfach nur den
Namen des zu bearbeitenden Programms ein, also ohne jede Endung.
alles zusammen ...
Wird dieses Gadget gewählt, ruft das Programm hintereinander den Compiler
und den Linker auf und startet dann das erzeugte Programm.
Endung 1
Über dieses Gadget wird die Endung die als erstes in der Konfigurations-
liste steht zur aktuellen Endung erklärt.
Endung 2
Über dieses Gadget wird die Endung die als zweites in der Konfigurations-
liste steht zur aktuellen Endung erklärt.
Kommando
Mit dem Kommandogadget wird ein neues CLI-Fenster auf der Workbench
aufgemacht. Verlassen wird das Fenster natürlich mit dem
ENDCLI-Befehl
Wer wars ?
Dieses Gadget giebt Informationen über Version und Autor den Programms
aus.
Neuer Name
Der ARP-Filerequester wird mit diesem Gadget aufgerufen, um einen neuen
Arbeitsnamen auszuwählen. Der Requester zeigt beim 1. Aufruf das
Verzeichniss, das beim Start des Programms aktuell war, an. Bei jedem
weiteren Aufruf zeigt er das Verzeichniss, in dem man sich befand, als
man den Requester zuletzt mit "OK" verließ.
Betätigt man, bei aktivem Requester, die rechte Maustaste, wird eine
Liste aller Diskdevices, sowie aller mit ASSIGN zugewiesenen Lauf-
werke gezeigt.
Ende
Zu diesem Gadget muß eigentlich nicht viel gesagt werden. Damit
wird das Programm verlassen.
- Fehler und Probleme
Da es eigentlich fehlerfreie Software nicht giebt, wäre ich jedem
sehr sehr dankbar, wenn er mich irgendwie über eventuell auftretende
Fehler unterrichten könnte. (Adresse siehe unten)
Natürlich sind auch Lösungen für Probleme willkommen !
Als Belohnung ist mindestens eine kostenlose Disk mit der neuen
Version fällig !
1.
Wenn man Compiler und Linker über "alles zusammen ..." gestartet hat
und Compiler oder Linker einen Fehler finden, läuft der CompControl
leider bis zum Start der alten Programmversion durch.
Das Problem liegt hier bei der DOS.Execute-Funktion. Diese liefert
(vielleicht auch nur bei meiner Compilerversion ??) nämlich immer
nur -1 als Rückgabewert. Ich kann also auf diesem Wege nicht
feststellen, ob eine Operation erfolgreich war oder nicht !
Falls jemand die Lösung für dieses Problem hat, wäre es gut, wenn
er mir mal schreiben könnte.
Man sollte also "alles zusammen ..." erst einsetzen, wenn man sicher
ist, daß sich keine Fehler mehr eingeschlichen haben. (z.B. wenn
man nur ein paar Texte oder Werte geändert hat)
2.
Wird das Programm von der WorkBench gestartet, laufen die zu startenden
Programme nicht. Der CompControl wartet darauf, daß der Rechner von der
Ausführung der Programme zurückkehrt (was er allerdings auch mit gutem
zureden, CTRL-C usw., nicht tut.
Leider habe ich keine Ahnung, woran das liegt ! Ich werde mich bis zur
nächsten Version um eine Lösung bemühen.
Hier ist noch die Kontaktadresse
für die SoftWareArmy :
Ralf Kaiser
Winckelmannstraße 1
5600 Wuppertal 2
Tel. 02 02 / 59 28 10
oder per DFUE :
Ronsdorfer Mailbox (Zerberus-Netz) 300/1200 Baud 8N1
02 02 / 46 36 78
im MODULA-Brett ("BRETT /MODULA *" eingeben)
USERNAME : ALFI